← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Thu Dec 15 15:23:56 2022
Reported on Thu Dec 15 15:27:03 2022

Filename(eval 329)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 8904 statements in 9.83ms
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
2221226.38ms6.38msJSON::Schema::Modern::::_assert__format_validations JSON::Schema::Modern::_assert__format_validations
11114µs34µsJSON::Schema::Modern::::BEGIN@7.183 JSON::Schema::Modern::BEGIN@7.183
1115µs5µsMethod::Generate::Accessor::_Generated::::BEGIN@12.184Method::Generate::Accessor::_Generated::BEGIN@12.184
1115µs11µsMethod::Generate::Accessor::_Generated::::BEGIN@24.185Method::Generate::Accessor::_Generated::BEGIN@24.185
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
221µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
310s my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
411µs my $isa_check_for__5fformat_5fvalidations = ${$_[1]->{"\$isa_check_for__5fformat_5fvalidations"}};
510s my $default_for__5fformat_5fvalidations = ${$_[1]->{"\$default_for__5fformat_5fvalidations"}};
6 package JSON::Schema::Modern;
7245µs254µs
# spent 34µs (14+20) within JSON::Schema::Modern::BEGIN@7.183 which was called: # once (14µs+20µs) by Sub::Quote::_clean_eval at line 7
no warnings 'closure';
# spent 34µs making 1 call to JSON::Schema::Modern::BEGIN@7.183 # spent 20µs making 1 call to warnings::unimport
8
# spent 6.38ms (6.38+1000ns) within JSON::Schema::Modern::_assert__format_validations which was called 2221 times, avg 3µs/call: # 2220 times (6.38ms+0s) by JSON::Schema::Modern::_get_format_validation at line 17 of (eval 328)[Sub/Quote.pm:3], avg 3µs/call # once (9µs+1µs) by JSON::Schema::Modern::add_format_validation at line 17 of (eval 327)[Sub/Quote.pm:3]
sub _assert__format_validations {
9 ($_QUOTED,$_UNQUOTED) if 0;
10# BEGIN quote_sub PRELUDE
11package Method::Generate::Accessor::_Generated;
12
# spent 5µs within Method::Generate::Accessor::_Generated::BEGIN@12.184 which was called: # once (5µs+0s) by Sub::Quote::_clean_eval at line 17
BEGIN {
1311µs $^H = 2018;
1410s ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
1513µs %^H = (
16 );
17131µs15µs}
18# END quote_sub PRELUDE
1922215.83msdo {
20 my $val = exists $_[0]->{"_format_validations"} ?
21$_[0]->{"_format_validations"}
2222212.52ms: do {
2312µs11µs my $value = $default_for__5fformat_5fvalidations->($_[0]);
246423µs217µs
# spent 11µs (5+6) within Method::Generate::Accessor::_Generated::BEGIN@24.185 which was called: # once (5µs+6µs) by Sub::Quote::_clean_eval at line 24
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($value)) and (not grep {my $v = ($value)->{$_};not((/\A(?:date\-time|date|time|duration|email|idn\-email|hostname|idn\-hostname|ipv4|ipv6|uri|uri\-reference|iri|iri\-reference|uuid|uri\-template|json\-pointer|relative\-json\-pointer|regex)\z/) or (((!!1)) and (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($v)) and not(grep !/\A(?:type|sub)\z/, keys %{$v}) and exists($v->{"type"}) and (defined($v->{"type"}) and !ref($v->{"type"}) and $v->{"type"} =~ m{\A(?:(?:array|boolean|integer|nu(?:ll|mber)|object|string))\z}) and exists($v->{"sub"}) and do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($v->{"sub"}) } })))} keys %{$value}) and (!exists $value->{"date-time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date-time"}) })) and (!exists $value->{"date"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date"}) })) and (!exists $value->{"time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"time"}) })) and (!exists $value->{"duration"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"duration"}) })) and (!exists $value->{"email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"email"}) })) and (!exists $value->{"idn-email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-email"}) })) and (!exists $value->{"hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"hostname"}) })) and (!exists $value->{"idn-hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-hostname"}) })) and (!exists $value->{"ipv4"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv4"}) })) and (!exists $value->{"ipv6"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv6"}) })) and (!exists $value->{"uri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri"}) })) and (!exists $value->{"uri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-reference"}) })) and (!exists $value->{"iri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri"}) })) and (!exists $value->{"iri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri-reference"}) })) and (!exists $value->{"uuid"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uuid"}) })) and (!exists $value->{"uri-template"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-template"}) })) and (!exists $value->{"json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"json-pointer"}) })) and (!exists $value->{"relative-json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"relative-json-pointer"}) })) and (!exists $value->{"regex"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"regex"}) })) }) or Type::Tiny::_failed_check($isa_check_for__5fformat_5fvalidations, "Dict[date=>Optional[CodeRef],date-time=>Optional[CodeRef],duration=>Optional[CodeRef],email=>Optional[CodeRef],hostname=>Optional[CodeRef],idn-email=>Optional[CodeRef],idn-hostname=>Optional[CodeRef],ipv4=>Optional[CodeRef],ipv6=>Optional[CodeRef],iri=>Optional[CodeRef],iri-reference=>Optional[CodeRef],json-pointer=>Optional[CodeRef],regex=>Optional[CodeRef],relative-json-pointer=>Optional[CodeRef],time=>Optional[CodeRef],uri=>Optional[CodeRef],uri-reference=>Optional[CodeRef],uri-template=>Optional[CodeRef],uuid=>Optional[CodeRef],Slurpy[HashRef[Dict[sub=>CodeRef,type=>Enum[\"null\",\"object\",\"array\",\"boolean\",\"string\",\"number\",\"integer\"]]]]]", $value, "attribute_name","_format_validations","attribute_step","isa check","mgaca","0","varname","\$self->{\"_format_validations\"}"); $value };
# spent 11µs making 1 call to Method::Generate::Accessor::_Generated::BEGIN@24.185 # spent 6µs making 1 call to warnings::unimport
2510s $_[0]->{"_format_validations"} = $value
26 }
27;
282221497µs exists $_[0]->{"_format_validations"}
29 or Carp::croak(q{Attempted to access '}."_format_validations".q{' but it is not set});
302221471µs $val;
31}
32 }
3311µs $$_UNQUOTED = \&_assert__format_validations;
34}
3515µs1;
36
37;